package com.auxgroup.hr.front.commons.exception;

import com.auxgroup.hr.front.commons.BaseRetCode;

public class FrontExceptionData {
	
	private String errorCode;
	private String errorMsg;
	private String errorExtMsg;
	private Object errorData;
	
	public FrontExceptionData() {
		super();
	}
	
	/**
	 *
	 */
	public FrontExceptionData(BaseRetCode retCode) {
		super();
		if(retCode!=null){
			this.errorCode = retCode.getRetCode();
			this.errorMsg = retCode.getRetMsg();
		}else{
			throw new IllegalArgumentException("arg retCode is null!");
		}
	}
	
	/**
	 * @param errorCode
	 * @param errorMsg
	 * @param errorExtMsg
	 */
	public FrontExceptionData(BaseRetCode retCode, 
			String errorExtMsg) {
		this(retCode);
		this.errorExtMsg = errorExtMsg;
	}
	
	/**
	 * @param errorCode
	 * @param errorMsg
	 */
	public FrontExceptionData(String errorCode, String errorMsg) {
		super();
		this.errorCode = errorCode;
		this.errorMsg = errorMsg;
	}

	/**
	 * @param errorCode
	 * @param errorMsg
	 * @param errorExtMsg
	 */
	public FrontExceptionData(String errorCode, String errorMsg,
			String errorExtMsg) {
		super();
		this.errorCode = errorCode;
		this.errorMsg = errorMsg;
		this.errorExtMsg = errorExtMsg;
	}
	
	
	/**
	 * @param errorCode
	 * @param errorMsg
	 * @param errorData
	 */
	public FrontExceptionData(String errorCode, String errorMsg,
			Object errorData) {
		super();
		this.errorCode = errorCode;
		this.errorMsg = errorMsg;
		this.errorData = errorData;
	}

	/**
	 * @param errorCode
	 * @param errorMsg
	 * @param errorExtMsg
	 * @param errorData
	 */
	public FrontExceptionData(String errorCode, String errorMsg,
			String errorExtMsg, Object errorData) {
		super();
		this.errorCode = errorCode;
		this.errorMsg = errorMsg;
		this.errorExtMsg = errorExtMsg;
		this.errorData = errorData;
	}

	public String getErrorCode() {
		return errorCode;
	}
	public void setErrorCode(String errorCode) {
		this.errorCode = errorCode;
	}
	public String getErrorMsg() {
		return errorMsg;
	}
	public void setErrorMsg(String errorMsg) {
		this.errorMsg = errorMsg;
	}
	public String getErrorExtMsg() {
		return errorExtMsg;
	}
	public void setErrorExtMsg(String errorExtMsg) {
		this.errorExtMsg = errorExtMsg;
	}

	public Object getErrorData() {
		return errorData;
	}

	public void setErrorData(Object errorData) {
		this.errorData = errorData;
	}
	
	
}
